package com.ourteam.product.requirement.dao;

import net.dao.BaseQueryBean;
import net.dao.BaseWhereCriterion;
import net.dao.IDataAccessInterface;

import org.apache.commons.lang.StringUtils;

import java.util.Arrays;
import java.util.List;
import java.util.Map;


/**
 * Template Name : DAO查询对象
 * Template Version : 1
 * Template Last Modfiy Date : Sat Aug 19 10:06:32 CST 2017
 * Auto Generate Date : 2018-05-03 16:45:29
  * Warning ! This file will be overwrite when regenerate !
  *
 */
public class ProductTeamDAOQueryBean extends BaseQueryBean {
    public ProductTeamDAOQueryBean() {
        super();
    }

    public ProductTeamDAOQueryBean(BaseQueryBean aQueryBean) {
        super(aQueryBean);
    }

    public ProductTeamDAOQueryBean(BaseQueryBean aQueryBean, Map tableReplaceMap) {
        super(aQueryBean, tableReplaceMap);
    }

    public Criteria createCriteria() {
        Criteria criteria = createCriteriaInternal();

        if (oredCriteria.size() == 0) {
            oredCriteria.add(criteria);
        }

        return criteria;
    }

    protected Criteria createCriteriaInternal() {
        return new Criteria(this);
    }

    public void addIdSelectProperty() {
        addIdSelectProperty("id");
    }

    public void addIdSelectProperty(String aAlias) {
        if (StringUtils.isNotBlank(aAlias)) {
            addSelectProperty(IProductTeamDAO.Id, aAlias);
        } else {
            addSelectProperty(IProductTeamDAO.Id, "id");
        }
    }

    public void addProductDefineIdSelectProperty() {
        addProductDefineIdSelectProperty("productDefineId");
    }

    public void addProductDefineIdSelectProperty(String aAlias) {
        if (StringUtils.isNotBlank(aAlias)) {
            addSelectProperty(IProductTeamDAO.ProductDefineId, aAlias);
        } else {
            addSelectProperty(IProductTeamDAO.ProductDefineId, "productDefineId");
        }
    }

    public void addStafferIdSelectProperty() {
        addStafferIdSelectProperty("stafferId");
    }

    public void addStafferIdSelectProperty(String aAlias) {
        if (StringUtils.isNotBlank(aAlias)) {
            addSelectProperty(IProductTeamDAO.StafferId, aAlias);
        } else {
            addSelectProperty(IProductTeamDAO.StafferId, "stafferId");
        }
    }

    public void addStafferRoleSelectProperty() {
        addStafferRoleSelectProperty("stafferRole");
    }

    public void addStafferRoleSelectProperty(String aAlias) {
        if (StringUtils.isNotBlank(aAlias)) {
            addSelectProperty(IProductTeamDAO.StafferRole, aAlias);
        } else {
            addSelectProperty(IProductTeamDAO.StafferRole, "stafferRole");
        }
    }

    public void addStatusSelectProperty() {
        addStatusSelectProperty("status");
    }

    public void addStatusSelectProperty(String aAlias) {
        if (StringUtils.isNotBlank(aAlias)) {
            addSelectProperty(IProductTeamDAO.Status, aAlias);
        } else {
            addSelectProperty(IProductTeamDAO.Status, "status");
        }
    }

    public void addRemarksSelectProperty() {
        addRemarksSelectProperty("remarks");
    }

    public void addRemarksSelectProperty(String aAlias) {
        if (StringUtils.isNotBlank(aAlias)) {
            addSelectProperty(IProductTeamDAO.Remarks, aAlias);
        } else {
            addSelectProperty(IProductTeamDAO.Remarks, "remarks");
        }
    }

    public void addStafferNameSelectProperty() {
        addStafferNameSelectProperty("stafferName");
    }

    public void addStafferNameSelectProperty(String aAlias) {
        if (StringUtils.isNotBlank(aAlias)) {
            addSelectProperty(IProductTeamDAO.StafferName, aAlias);
        } else {
            addSelectProperty(IProductTeamDAO.StafferName, "stafferName");
        }
    }

    public void addStafferPhotoSelectProperty() {
        addStafferPhotoSelectProperty("stafferPhoto");
    }

    public void addStafferPhotoSelectProperty(String aAlias) {
        if (StringUtils.isNotBlank(aAlias)) {
            addSelectProperty(IProductTeamDAO.StafferPhoto, aAlias);
        } else {
            addSelectProperty(IProductTeamDAO.StafferPhoto, "stafferPhoto");
        }
    }

    public void addProductNameSelectProperty() {
        addProductNameSelectProperty("productName");
    }

    public void addProductNameSelectProperty(String aAlias) {
        if (StringUtils.isNotBlank(aAlias)) {
            addSelectProperty(IProductTeamDAO.ProductName, aAlias);
        } else {
            addSelectProperty(IProductTeamDAO.ProductName, "productName");
        }
    }

    public void addAllSelectProperties() {
        addIdSelectProperty();

        addProductDefineIdSelectProperty();

        addStafferIdSelectProperty();

        addStafferRoleSelectProperty();

        addStatusSelectProperty();

        addRemarksSelectProperty();

        addStafferNameSelectProperty();

        addStafferPhotoSelectProperty();

        addProductNameSelectProperty();
    }

    public static class Criteria extends BaseWhereCriterion<ProductTeamDAOQueryBean> {
        protected Criteria(ProductTeamDAOQueryBean aParentObject) {
            super(aParentObject);
        }

        public Criteria andIdIsNull() {
            addCriterion(IProductTeamDAO.Id + " is null");

            return this;
        }

        public Criteria andIdIsNotNull() {
            addCriterion(IProductTeamDAO.Id + " is not null");

            return this;
        }

        public Criteria andIdIsNotEmpty() {
            addCriterion(IProductTeamDAO.Id + " is not null AND " +
                IProductTeamDAO.Id + " <> ''");

            return this;
        }

        public Criteria andIdIsEmpty() {
            addCriterion("(" + IProductTeamDAO.Id + " is null OR " +
                IProductTeamDAO.Id + " = '')");

            return this;
        }

        public Criteria andIdEqualTo(long value) {
            return andIdEqualTo(Long.valueOf(value));
        }

        public Criteria andIdEqualTo(java.lang.Long value) {
            addCriterion(IProductTeamDAO.Id + " = ", value, "id");

            return this;
        }

        public Criteria andIdEqualToForeignKey(java.lang.String key) {
            StringBuffer str = new StringBuffer(IProductTeamDAO.Id);
            str.append(" = ").append(key);
            addForeignKeyCriterion(str.toString());

            return this;
        }

        public Criteria andIdEqualTo(BaseQueryBean subQueryBean,
            IDataAccessInterface<?, ?> dao) {
            addCriterion(IProductTeamDAO.Id + " = ", subQueryBean, dao);

            return this;
        }

        public Criteria andIdNotEqualTo(long value) {
            return andIdNotEqualTo(Long.valueOf(value));
        }

        public Criteria andIdNotEqualTo(java.lang.Long value) {
            addCriterion(IProductTeamDAO.Id + " <>", value, "id");

            return this;
        }

        public Criteria andIdNotEqualToOrIsNull(long value) {
            return andIdNotEqualToOrIsNull(Long.valueOf(value));
        }

        public Criteria andIdNotEqualToOrIsNull(java.lang.Long value) {
            addCriterion(IProductTeamDAO.Id + " is null OR " +
                IProductTeamDAO.Id + " <>", value, "id");

            return this;
        }

        public Criteria andIdNotEqualToForeignKey(java.lang.String key) {
            StringBuffer str = new StringBuffer(IProductTeamDAO.Id);
            str.append(" <> ").append(key);
            addForeignKeyCriterion(str.toString());

            return this;
        }

        public Criteria andIdNotEqualTo(BaseQueryBean subQueryBean,
            IDataAccessInterface<?, ?> dao) {
            addCriterion(IProductTeamDAO.Id + " <> ", subQueryBean, dao);

            return this;
        }

        public Criteria andIdGreaterThan(long value) {
            return andIdGreaterThan(Long.valueOf(value));
        }

        public Criteria andIdGreaterThan(java.lang.Long value) {
            addCriterion(IProductTeamDAO.Id + " >", value, "id");

            return this;
        }

        public Criteria andIdGreaterThanForeignKey(java.lang.String key) {
            StringBuffer str = new StringBuffer(IProductTeamDAO.Id);
            str.append(" > ").append(key);
            addForeignKeyCriterion(str.toString());

            return this;
        }

        public Criteria andIdGreaterThan(BaseQueryBean subQueryBean,
            IDataAccessInterface<?, ?> dao) {
            addCriterion(IProductTeamDAO.Id + " > ", subQueryBean, dao);

            return this;
        }

        public Criteria andIdGreaterThanOrEqualTo(long value) {
            return andIdGreaterThanOrEqualTo(Long.valueOf(value));
        }

        public Criteria andIdGreaterThanOrEqualTo(java.lang.Long value) {
            addCriterion(IProductTeamDAO.Id + " >=", value, "id");

            return this;
        }

        public Criteria andIdGreaterThanOrEqualToForeignKey(
            java.lang.String key) {
            StringBuffer str = new StringBuffer(IProductTeamDAO.Id);
            str.append(" >= ").append(key);
            addForeignKeyCriterion(str.toString());

            return this;
        }

        public Criteria andIdGreaterThanOrEqualTo(BaseQueryBean subQueryBean,
            IDataAccessInterface<?, ?> dao) {
            addCriterion(IProductTeamDAO.Id + " >= ", subQueryBean, dao);

            return this;
        }

        public Criteria andIdLessThan(long value) {
            return andIdLessThan(Long.valueOf(value));
        }

        public Criteria andIdLessThan(java.lang.Long value) {
            addCriterion(IProductTeamDAO.Id + " <", value, "id");

            return this;
        }

        public Criteria andIdLessThanForeignKey(java.lang.String key) {
            StringBuffer str = new StringBuffer(IProductTeamDAO.Id);
            str.append(" < ").append(key);
            addForeignKeyCriterion(str.toString());

            return this;
        }

        public Criteria andIdLessThan(BaseQueryBean subQueryBean,
            IDataAccessInterface<?, ?> dao) {
            addCriterion(IProductTeamDAO.Id + " < ", subQueryBean, dao);

            return this;
        }

        public Criteria andIdLessThanOrEqualTo(long value) {
            return andIdLessThanOrEqualTo(Long.valueOf(value));
        }

        public Criteria andIdLessThanOrEqualTo(java.lang.Long value) {
            addCriterion(IProductTeamDAO.Id + " <=", value, "id");

            return this;
        }

        public Criteria andIdLessThanOrEqualToForeignKey(java.lang.String key) {
            StringBuffer str = new StringBuffer(IProductTeamDAO.Id);
            str.append(" <= ").append(key);
            addForeignKeyCriterion(str.toString());

            return this;
        }

        public Criteria andIdLessThanOrEqualTo(BaseQueryBean subQueryBean,
            IDataAccessInterface<?, ?> dao) {
            addCriterion(IProductTeamDAO.Id + " <= ", subQueryBean, dao);

            return this;
        }

        public Criteria andIdIn(long[] values) {
            if (values.length == 1) {
                return andIdEqualTo((java.lang.Long) values[0]);
            } else {
                addCriterion(IProductTeamDAO.Id + " in", values, "id");

                return this;
            }
        }

        public Criteria andIdNotIn(long[] values) {
            if (values.length == 1) {
                return andIdNotEqualTo((java.lang.Long) values[0]);
            } else {
                addCriterion(IProductTeamDAO.Id + " not in", values, "id");

                return this;
            }
        }

        public Criteria andIdIn(List<java.lang.Long> values) {
            if (values.size() == 1) {
                return andIdEqualTo(values.get(0));
            } else {
                addCriterion(IProductTeamDAO.Id + " in", values, "id");

                return this;
            }
        }

        public Criteria andIdNotIn(List<java.lang.Long> values) {
            if (values.size() == 1) {
                return andIdNotEqualTo(values.get(0));
            } else {
                addCriterion(IProductTeamDAO.Id + " not in", values, "id");

                return this;
            }
        }

        public Criteria andIdIn(java.lang.Long[] values) {
            if (values.length == 1) {
                return andIdEqualTo(values[0]);
            } else {
                addCriterion(IProductTeamDAO.Id + " in", Arrays.asList(values),
                    "id");

                return this;
            }
        }

        public Criteria andIdNotIn(java.lang.Long[] values) {
            if (values.length == 1) {
                return andIdNotEqualTo(values[0]);
            } else {
                addCriterion(IProductTeamDAO.Id + " not in",
                    Arrays.asList(values), "id");

                return this;
            }
        }

        public Criteria andIdIn(BaseQueryBean subQueryBean,
            IDataAccessInterface<?, ?> dao) {
            addCriterion(IProductTeamDAO.Id + " in ", subQueryBean, dao);

            return this;
        }

        public Criteria andIdNotIn(BaseQueryBean subQueryBean,
            IDataAccessInterface<?, ?> dao) {
            addCriterion(IProductTeamDAO.Id + " not in ", subQueryBean, dao);

            return this;
        }

        public Criteria andIdBetween(long value1, long value2) {
            addCriterion(IProductTeamDAO.Id + " between", value1, value2, "id");

            return this;
        }

        public Criteria andIdBetween(java.lang.Long value1,
            java.lang.Long value2) {
            addCriterion(IProductTeamDAO.Id + " between", value1, value2, "id");

            return this;
        }

        public Criteria andIdNotBetween(long value1, long value2) {
            addCriterion(IProductTeamDAO.Id + " not between", value1, value2,
                "id");

            return this;
        }

        public Criteria andIdNotBetween(java.lang.Long value1,
            java.lang.Long value2) {
            addCriterion(IProductTeamDAO.Id + " not between", value1, value2,
                "id");

            return this;
        }

        public Criteria andProductDefineIdIsNull() {
            addCriterion(IProductTeamDAO.ProductDefineId + " is null");

            return this;
        }

        public Criteria andProductDefineIdIsNotNull() {
            addCriterion(IProductTeamDAO.ProductDefineId + " is not null");

            return this;
        }

        public Criteria andProductDefineIdIsNotEmpty() {
            addCriterion(IProductTeamDAO.ProductDefineId + " is not null AND " +
                IProductTeamDAO.ProductDefineId + " <> ''");

            return this;
        }

        public Criteria andProductDefineIdIsEmpty() {
            addCriterion("(" + IProductTeamDAO.ProductDefineId +
                " is null OR " + IProductTeamDAO.ProductDefineId + " = '')");

            return this;
        }

        public Criteria andProductDefineIdEqualTo(long value) {
            return andProductDefineIdEqualTo(Long.valueOf(value));
        }

        public Criteria andProductDefineIdEqualTo(java.lang.Long value) {
            addCriterion(IProductTeamDAO.ProductDefineId + " = ", value,
                "productDefineId");

            return this;
        }

        public Criteria andProductDefineIdEqualToForeignKey(
            java.lang.String key) {
            StringBuffer str = new StringBuffer(IProductTeamDAO.ProductDefineId);
            str.append(" = ").append(key);
            addForeignKeyCriterion(str.toString());

            return this;
        }

        public Criteria andProductDefineIdEqualTo(BaseQueryBean subQueryBean,
            IDataAccessInterface<?, ?> dao) {
            addCriterion(IProductTeamDAO.ProductDefineId + " = ", subQueryBean,
                dao);

            return this;
        }

        public Criteria andProductDefineIdNotEqualTo(long value) {
            return andProductDefineIdNotEqualTo(Long.valueOf(value));
        }

        public Criteria andProductDefineIdNotEqualTo(java.lang.Long value) {
            addCriterion(IProductTeamDAO.ProductDefineId + " <>", value,
                "productDefineId");

            return this;
        }

        public Criteria andProductDefineIdNotEqualToOrIsNull(long value) {
            return andProductDefineIdNotEqualToOrIsNull(Long.valueOf(value));
        }

        public Criteria andProductDefineIdNotEqualToOrIsNull(
            java.lang.Long value) {
            addCriterion(IProductTeamDAO.ProductDefineId + " is null OR " +
                IProductTeamDAO.ProductDefineId + " <>", value,
                "productDefineId");

            return this;
        }

        public Criteria andProductDefineIdNotEqualToForeignKey(
            java.lang.String key) {
            StringBuffer str = new StringBuffer(IProductTeamDAO.ProductDefineId);
            str.append(" <> ").append(key);
            addForeignKeyCriterion(str.toString());

            return this;
        }

        public Criteria andProductDefineIdNotEqualTo(
            BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
            addCriterion(IProductTeamDAO.ProductDefineId + " <> ",
                subQueryBean, dao);

            return this;
        }

        public Criteria andProductDefineIdGreaterThan(long value) {
            return andProductDefineIdGreaterThan(Long.valueOf(value));
        }

        public Criteria andProductDefineIdGreaterThan(java.lang.Long value) {
            addCriterion(IProductTeamDAO.ProductDefineId + " >", value,
                "productDefineId");

            return this;
        }

        public Criteria andProductDefineIdGreaterThanForeignKey(
            java.lang.String key) {
            StringBuffer str = new StringBuffer(IProductTeamDAO.ProductDefineId);
            str.append(" > ").append(key);
            addForeignKeyCriterion(str.toString());

            return this;
        }

        public Criteria andProductDefineIdGreaterThan(
            BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
            addCriterion(IProductTeamDAO.ProductDefineId + " > ", subQueryBean,
                dao);

            return this;
        }

        public Criteria andProductDefineIdGreaterThanOrEqualTo(long value) {
            return andProductDefineIdGreaterThanOrEqualTo(Long.valueOf(value));
        }

        public Criteria andProductDefineIdGreaterThanOrEqualTo(
            java.lang.Long value) {
            addCriterion(IProductTeamDAO.ProductDefineId + " >=", value,
                "productDefineId");

            return this;
        }

        public Criteria andProductDefineIdGreaterThanOrEqualToForeignKey(
            java.lang.String key) {
            StringBuffer str = new StringBuffer(IProductTeamDAO.ProductDefineId);
            str.append(" >= ").append(key);
            addForeignKeyCriterion(str.toString());

            return this;
        }

        public Criteria andProductDefineIdGreaterThanOrEqualTo(
            BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
            addCriterion(IProductTeamDAO.ProductDefineId + " >= ",
                subQueryBean, dao);

            return this;
        }

        public Criteria andProductDefineIdLessThan(long value) {
            return andProductDefineIdLessThan(Long.valueOf(value));
        }

        public Criteria andProductDefineIdLessThan(java.lang.Long value) {
            addCriterion(IProductTeamDAO.ProductDefineId + " <", value,
                "productDefineId");

            return this;
        }

        public Criteria andProductDefineIdLessThanForeignKey(
            java.lang.String key) {
            StringBuffer str = new StringBuffer(IProductTeamDAO.ProductDefineId);
            str.append(" < ").append(key);
            addForeignKeyCriterion(str.toString());

            return this;
        }

        public Criteria andProductDefineIdLessThan(BaseQueryBean subQueryBean,
            IDataAccessInterface<?, ?> dao) {
            addCriterion(IProductTeamDAO.ProductDefineId + " < ", subQueryBean,
                dao);

            return this;
        }

        public Criteria andProductDefineIdLessThanOrEqualTo(long value) {
            return andProductDefineIdLessThanOrEqualTo(Long.valueOf(value));
        }

        public Criteria andProductDefineIdLessThanOrEqualTo(
            java.lang.Long value) {
            addCriterion(IProductTeamDAO.ProductDefineId + " <=", value,
                "productDefineId");

            return this;
        }

        public Criteria andProductDefineIdLessThanOrEqualToForeignKey(
            java.lang.String key) {
            StringBuffer str = new StringBuffer(IProductTeamDAO.ProductDefineId);
            str.append(" <= ").append(key);
            addForeignKeyCriterion(str.toString());

            return this;
        }

        public Criteria andProductDefineIdLessThanOrEqualTo(
            BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
            addCriterion(IProductTeamDAO.ProductDefineId + " <= ",
                subQueryBean, dao);

            return this;
        }

        public Criteria andProductDefineIdIn(long[] values) {
            if (values.length == 1) {
                return andProductDefineIdEqualTo((java.lang.Long) values[0]);
            } else {
                addCriterion(IProductTeamDAO.ProductDefineId + " in", values,
                    "productDefineId");

                return this;
            }
        }

        public Criteria andProductDefineIdNotIn(long[] values) {
            if (values.length == 1) {
                return andProductDefineIdNotEqualTo((java.lang.Long) values[0]);
            } else {
                addCriterion(IProductTeamDAO.ProductDefineId + " not in",
                    values, "productDefineId");

                return this;
            }
        }

        public Criteria andProductDefineIdIn(List<java.lang.Long> values) {
            if (values.size() == 1) {
                return andProductDefineIdEqualTo(values.get(0));
            } else {
                addCriterion(IProductTeamDAO.ProductDefineId + " in", values,
                    "productDefineId");

                return this;
            }
        }

        public Criteria andProductDefineIdNotIn(List<java.lang.Long> values) {
            if (values.size() == 1) {
                return andProductDefineIdNotEqualTo(values.get(0));
            } else {
                addCriterion(IProductTeamDAO.ProductDefineId + " not in",
                    values, "productDefineId");

                return this;
            }
        }

        public Criteria andProductDefineIdIn(java.lang.Long[] values) {
            if (values.length == 1) {
                return andProductDefineIdEqualTo(values[0]);
            } else {
                addCriterion(IProductTeamDAO.ProductDefineId + " in",
                    Arrays.asList(values), "productDefineId");

                return this;
            }
        }

        public Criteria andProductDefineIdNotIn(java.lang.Long[] values) {
            if (values.length == 1) {
                return andProductDefineIdNotEqualTo(values[0]);
            } else {
                addCriterion(IProductTeamDAO.ProductDefineId + " not in",
                    Arrays.asList(values), "productDefineId");

                return this;
            }
        }

        public Criteria andProductDefineIdIn(BaseQueryBean subQueryBean,
            IDataAccessInterface<?, ?> dao) {
            addCriterion(IProductTeamDAO.ProductDefineId + " in ",
                subQueryBean, dao);

            return this;
        }

        public Criteria andProductDefineIdNotIn(BaseQueryBean subQueryBean,
            IDataAccessInterface<?, ?> dao) {
            addCriterion(IProductTeamDAO.ProductDefineId + " not in ",
                subQueryBean, dao);

            return this;
        }

        public Criteria andProductDefineIdBetween(long value1, long value2) {
            addCriterion(IProductTeamDAO.ProductDefineId + " between", value1,
                value2, "productDefineId");

            return this;
        }

        public Criteria andProductDefineIdBetween(java.lang.Long value1,
            java.lang.Long value2) {
            addCriterion(IProductTeamDAO.ProductDefineId + " between", value1,
                value2, "productDefineId");

            return this;
        }

        public Criteria andProductDefineIdNotBetween(long value1, long value2) {
            addCriterion(IProductTeamDAO.ProductDefineId + " not between",
                value1, value2, "productDefineId");

            return this;
        }

        public Criteria andProductDefineIdNotBetween(java.lang.Long value1,
            java.lang.Long value2) {
            addCriterion(IProductTeamDAO.ProductDefineId + " not between",
                value1, value2, "productDefineId");

            return this;
        }

        public Criteria andStafferIdIsNull() {
            addCriterion(IProductTeamDAO.StafferId + " is null");

            return this;
        }

        public Criteria andStafferIdIsNotNull() {
            addCriterion(IProductTeamDAO.StafferId + " is not null");

            return this;
        }

        public Criteria andStafferIdIsNotEmpty() {
            addCriterion(IProductTeamDAO.StafferId + " is not null AND " +
                IProductTeamDAO.StafferId + " <> ''");

            return this;
        }

        public Criteria andStafferIdIsEmpty() {
            addCriterion("(" + IProductTeamDAO.StafferId + " is null OR " +
                IProductTeamDAO.StafferId + " = '')");

            return this;
        }

        public Criteria andStafferIdEqualTo(long value) {
            return andStafferIdEqualTo(Long.valueOf(value));
        }

        public Criteria andStafferIdEqualTo(java.lang.Long value) {
            addCriterion(IProductTeamDAO.StafferId + " = ", value, "stafferId");

            return this;
        }

        public Criteria andStafferIdEqualToForeignKey(java.lang.String key) {
            StringBuffer str = new StringBuffer(IProductTeamDAO.StafferId);
            str.append(" = ").append(key);
            addForeignKeyCriterion(str.toString());

            return this;
        }

        public Criteria andStafferIdEqualTo(BaseQueryBean subQueryBean,
            IDataAccessInterface<?, ?> dao) {
            addCriterion(IProductTeamDAO.StafferId + " = ", subQueryBean, dao);

            return this;
        }

        public Criteria andStafferIdNotEqualTo(long value) {
            return andStafferIdNotEqualTo(Long.valueOf(value));
        }

        public Criteria andStafferIdNotEqualTo(java.lang.Long value) {
            addCriterion(IProductTeamDAO.StafferId + " <>", value, "stafferId");

            return this;
        }

        public Criteria andStafferIdNotEqualToOrIsNull(long value) {
            return andStafferIdNotEqualToOrIsNull(Long.valueOf(value));
        }

        public Criteria andStafferIdNotEqualToOrIsNull(java.lang.Long value) {
            addCriterion(IProductTeamDAO.StafferId + " is null OR " +
                IProductTeamDAO.StafferId + " <>", value, "stafferId");

            return this;
        }

        public Criteria andStafferIdNotEqualToForeignKey(java.lang.String key) {
            StringBuffer str = new StringBuffer(IProductTeamDAO.StafferId);
            str.append(" <> ").append(key);
            addForeignKeyCriterion(str.toString());

            return this;
        }

        public Criteria andStafferIdNotEqualTo(BaseQueryBean subQueryBean,
            IDataAccessInterface<?, ?> dao) {
            addCriterion(IProductTeamDAO.StafferId + " <> ", subQueryBean, dao);

            return this;
        }

        public Criteria andStafferIdGreaterThan(long value) {
            return andStafferIdGreaterThan(Long.valueOf(value));
        }

        public Criteria andStafferIdGreaterThan(java.lang.Long value) {
            addCriterion(IProductTeamDAO.StafferId + " >", value, "stafferId");

            return this;
        }

        public Criteria andStafferIdGreaterThanForeignKey(java.lang.String key) {
            StringBuffer str = new StringBuffer(IProductTeamDAO.StafferId);
            str.append(" > ").append(key);
            addForeignKeyCriterion(str.toString());

            return this;
        }

        public Criteria andStafferIdGreaterThan(BaseQueryBean subQueryBean,
            IDataAccessInterface<?, ?> dao) {
            addCriterion(IProductTeamDAO.StafferId + " > ", subQueryBean, dao);

            return this;
        }

        public Criteria andStafferIdGreaterThanOrEqualTo(long value) {
            return andStafferIdGreaterThanOrEqualTo(Long.valueOf(value));
        }

        public Criteria andStafferIdGreaterThanOrEqualTo(java.lang.Long value) {
            addCriterion(IProductTeamDAO.StafferId + " >=", value, "stafferId");

            return this;
        }

        public Criteria andStafferIdGreaterThanOrEqualToForeignKey(
            java.lang.String key) {
            StringBuffer str = new StringBuffer(IProductTeamDAO.StafferId);
            str.append(" >= ").append(key);
            addForeignKeyCriterion(str.toString());

            return this;
        }

        public Criteria andStafferIdGreaterThanOrEqualTo(
            BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
            addCriterion(IProductTeamDAO.StafferId + " >= ", subQueryBean, dao);

            return this;
        }

        public Criteria andStafferIdLessThan(long value) {
            return andStafferIdLessThan(Long.valueOf(value));
        }

        public Criteria andStafferIdLessThan(java.lang.Long value) {
            addCriterion(IProductTeamDAO.StafferId + " <", value, "stafferId");

            return this;
        }

        public Criteria andStafferIdLessThanForeignKey(java.lang.String key) {
            StringBuffer str = new StringBuffer(IProductTeamDAO.StafferId);
            str.append(" < ").append(key);
            addForeignKeyCriterion(str.toString());

            return this;
        }

        public Criteria andStafferIdLessThan(BaseQueryBean subQueryBean,
            IDataAccessInterface<?, ?> dao) {
            addCriterion(IProductTeamDAO.StafferId + " < ", subQueryBean, dao);

            return this;
        }

        public Criteria andStafferIdLessThanOrEqualTo(long value) {
            return andStafferIdLessThanOrEqualTo(Long.valueOf(value));
        }

        public Criteria andStafferIdLessThanOrEqualTo(java.lang.Long value) {
            addCriterion(IProductTeamDAO.StafferId + " <=", value, "stafferId");

            return this;
        }

        public Criteria andStafferIdLessThanOrEqualToForeignKey(
            java.lang.String key) {
            StringBuffer str = new StringBuffer(IProductTeamDAO.StafferId);
            str.append(" <= ").append(key);
            addForeignKeyCriterion(str.toString());

            return this;
        }

        public Criteria andStafferIdLessThanOrEqualTo(
            BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
            addCriterion(IProductTeamDAO.StafferId + " <= ", subQueryBean, dao);

            return this;
        }

        public Criteria andStafferIdIn(long[] values) {
            if (values.length == 1) {
                return andStafferIdEqualTo((java.lang.Long) values[0]);
            } else {
                addCriterion(IProductTeamDAO.StafferId + " in", values,
                    "stafferId");

                return this;
            }
        }

        public Criteria andStafferIdNotIn(long[] values) {
            if (values.length == 1) {
                return andStafferIdNotEqualTo((java.lang.Long) values[0]);
            } else {
                addCriterion(IProductTeamDAO.StafferId + " not in", values,
                    "stafferId");

                return this;
            }
        }

        public Criteria andStafferIdIn(List<java.lang.Long> values) {
            if (values.size() == 1) {
                return andStafferIdEqualTo(values.get(0));
            } else {
                addCriterion(IProductTeamDAO.StafferId + " in", values,
                    "stafferId");

                return this;
            }
        }

        public Criteria andStafferIdNotIn(List<java.lang.Long> values) {
            if (values.size() == 1) {
                return andStafferIdNotEqualTo(values.get(0));
            } else {
                addCriterion(IProductTeamDAO.StafferId + " not in", values,
                    "stafferId");

                return this;
            }
        }

        public Criteria andStafferIdIn(java.lang.Long[] values) {
            if (values.length == 1) {
                return andStafferIdEqualTo(values[0]);
            } else {
                addCriterion(IProductTeamDAO.StafferId + " in",
                    Arrays.asList(values), "stafferId");

                return this;
            }
        }

        public Criteria andStafferIdNotIn(java.lang.Long[] values) {
            if (values.length == 1) {
                return andStafferIdNotEqualTo(values[0]);
            } else {
                addCriterion(IProductTeamDAO.StafferId + " not in",
                    Arrays.asList(values), "stafferId");

                return this;
            }
        }

        public Criteria andStafferIdIn(BaseQueryBean subQueryBean,
            IDataAccessInterface<?, ?> dao) {
            addCriterion(IProductTeamDAO.StafferId + " in ", subQueryBean, dao);

            return this;
        }

        public Criteria andStafferIdNotIn(BaseQueryBean subQueryBean,
            IDataAccessInterface<?, ?> dao) {
            addCriterion(IProductTeamDAO.StafferId + " not in ", subQueryBean,
                dao);

            return this;
        }

        public Criteria andStafferIdBetween(long value1, long value2) {
            addCriterion(IProductTeamDAO.StafferId + " between", value1,
                value2, "stafferId");

            return this;
        }

        public Criteria andStafferIdBetween(java.lang.Long value1,
            java.lang.Long value2) {
            addCriterion(IProductTeamDAO.StafferId + " between", value1,
                value2, "stafferId");

            return this;
        }

        public Criteria andStafferIdNotBetween(long value1, long value2) {
            addCriterion(IProductTeamDAO.StafferId + " not between", value1,
                value2, "stafferId");

            return this;
        }

        public Criteria andStafferIdNotBetween(java.lang.Long value1,
            java.lang.Long value2) {
            addCriterion(IProductTeamDAO.StafferId + " not between", value1,
                value2, "stafferId");

            return this;
        }

        public Criteria andStafferRoleIsNull() {
            addCriterion(IProductTeamDAO.StafferRole + " is null");

            return this;
        }

        public Criteria andStafferRoleIsNotNull() {
            addCriterion(IProductTeamDAO.StafferRole + " is not null");

            return this;
        }

        public Criteria andStafferRoleIsNotEmpty() {
            addCriterion(IProductTeamDAO.StafferRole + " is not null AND " +
                IProductTeamDAO.StafferRole + " <> ''");

            return this;
        }

        public Criteria andStafferRoleIsEmpty() {
            addCriterion("(" + IProductTeamDAO.StafferRole + " is null OR " +
                IProductTeamDAO.StafferRole + " = '')");

            return this;
        }

        public Criteria andStafferRoleEqualTo(String value) {
            addCriterion(IProductTeamDAO.StafferRole + " = ", value,
                "stafferRole");

            return this;
        }

        public Criteria andStafferRoleEqualToForeignKey(java.lang.String key) {
            StringBuffer str = new StringBuffer(IProductTeamDAO.StafferRole);
            str.append(" = ").append(key);
            addForeignKeyCriterion(str.toString());

            return this;
        }

        public Criteria andStafferRoleEqualTo(BaseQueryBean subQueryBean,
            IDataAccessInterface<?, ?> dao) {
            addCriterion(IProductTeamDAO.StafferRole + " = ", subQueryBean, dao);

            return this;
        }

        public Criteria andStafferRoleNotEqualTo(String value) {
            addCriterion(IProductTeamDAO.StafferRole + " <>", value,
                "stafferRole");

            return this;
        }

        public Criteria andStafferRoleNotEqualToOrIsNull(String value) {
            addCriterion(IProductTeamDAO.StafferRole + " is null OR " +
                IProductTeamDAO.StafferRole + " <>", value, "stafferRole");

            return this;
        }

        public Criteria andStafferRoleNotEqualToForeignKey(java.lang.String key) {
            StringBuffer str = new StringBuffer(IProductTeamDAO.StafferRole);
            str.append(" <> ").append(key);
            addForeignKeyCriterion(str.toString());

            return this;
        }

        public Criteria andStafferRoleNotEqualTo(BaseQueryBean subQueryBean,
            IDataAccessInterface<?, ?> dao) {
            addCriterion(IProductTeamDAO.StafferRole + " <> ", subQueryBean, dao);

            return this;
        }

        public Criteria andStafferRoleGreaterThan(String value) {
            addCriterion(IProductTeamDAO.StafferRole + " >", value,
                "stafferRole");

            return this;
        }

        public Criteria andStafferRoleGreaterThanForeignKey(
            java.lang.String key) {
            StringBuffer str = new StringBuffer(IProductTeamDAO.StafferRole);
            str.append(" > ").append(key);
            addForeignKeyCriterion(str.toString());

            return this;
        }

        public Criteria andStafferRoleGreaterThan(BaseQueryBean subQueryBean,
            IDataAccessInterface<?, ?> dao) {
            addCriterion(IProductTeamDAO.StafferRole + " > ", subQueryBean, dao);

            return this;
        }

        public Criteria andStafferRoleGreaterThanOrEqualTo(String value) {
            addCriterion(IProductTeamDAO.StafferRole + " >=", value,
                "stafferRole");

            return this;
        }

        public Criteria andStafferRoleGreaterThanOrEqualToForeignKey(
            java.lang.String key) {
            StringBuffer str = new StringBuffer(IProductTeamDAO.StafferRole);
            str.append(" >= ").append(key);
            addForeignKeyCriterion(str.toString());

            return this;
        }

        public Criteria andStafferRoleGreaterThanOrEqualTo(
            BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
            addCriterion(IProductTeamDAO.StafferRole + " >= ", subQueryBean, dao);

            return this;
        }

        public Criteria andStafferRoleLessThan(String value) {
            addCriterion(IProductTeamDAO.StafferRole + " <", value,
                "stafferRole");

            return this;
        }

        public Criteria andStafferRoleLessThanForeignKey(java.lang.String key) {
            StringBuffer str = new StringBuffer(IProductTeamDAO.StafferRole);
            str.append(" < ").append(key);
            addForeignKeyCriterion(str.toString());

            return this;
        }

        public Criteria andStafferRoleLessThan(BaseQueryBean subQueryBean,
            IDataAccessInterface<?, ?> dao) {
            addCriterion(IProductTeamDAO.StafferRole + " < ", subQueryBean, dao);

            return this;
        }

        public Criteria andStafferRoleLessThanOrEqualTo(String value) {
            addCriterion(IProductTeamDAO.StafferRole + " <=", value,
                "stafferRole");

            return this;
        }

        public Criteria andStafferRoleLessThanOrEqualToForeignKey(
            java.lang.String key) {
            StringBuffer str = new StringBuffer(IProductTeamDAO.StafferRole);
            str.append(" <= ").append(key);
            addForeignKeyCriterion(str.toString());

            return this;
        }

        public Criteria andStafferRoleLessThanOrEqualTo(
            BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
            addCriterion(IProductTeamDAO.StafferRole + " <= ", subQueryBean, dao);

            return this;
        }

        public Criteria andStafferRoleLike(String value) {
            StringBuffer buffer = new StringBuffer("%");
            buffer.append(value);
            buffer.append("%");
            addCriterion(IProductTeamDAO.StafferRole + " like",
                buffer.toString(), "stafferRole");

            return this;
        }

        public Criteria andStafferRoleNotLike(String value) {
            StringBuffer buffer = new StringBuffer("%");
            buffer.append(value);
            buffer.append("%");
            addCriterion(IProductTeamDAO.StafferRole + " not like",
                buffer.toString(), "stafferRole");

            return this;
        }

        public Criteria andStafferRoleIn(List<String> values) {
            if (values.size() == 1) {
                return andStafferRoleEqualTo(values.get(0));
            } else {
                addCriterion(IProductTeamDAO.StafferRole + " in", values,
                    "stafferRole");

                return this;
            }
        }

        public Criteria andStafferRoleNotIn(List<String> values) {
            if (values.size() == 1) {
                return andStafferRoleNotEqualTo(values.get(0));
            } else {
                addCriterion(IProductTeamDAO.StafferRole + " not in", values,
                    "stafferRole");

                return this;
            }
        }

        public Criteria andStafferRoleIn(String[] values) {
            if (values.length == 1) {
                return andStafferRoleEqualTo(values[0]);
            } else {
                addCriterion(IProductTeamDAO.StafferRole + " in",
                    Arrays.asList(values), "stafferRole");

                return this;
            }
        }

        public Criteria andStafferRoleNotIn(String[] values) {
            if (values.length == 1) {
                return andStafferRoleNotEqualTo(values[0]);
            } else {
                addCriterion(IProductTeamDAO.StafferRole + " not in",
                    Arrays.asList(values), "stafferRole");

                return this;
            }
        }

        public Criteria andStafferRoleIn(BaseQueryBean subQueryBean,
            IDataAccessInterface<?, ?> dao) {
            addCriterion(IProductTeamDAO.StafferRole + " in ", subQueryBean, dao);

            return this;
        }

        public Criteria andStafferRoleNotIn(BaseQueryBean subQueryBean,
            IDataAccessInterface<?, ?> dao) {
            addCriterion(IProductTeamDAO.StafferRole + " not in ",
                subQueryBean, dao);

            return this;
        }

        public Criteria andStafferRoleBetween(String value1, String value2) {
            addCriterion(IProductTeamDAO.StafferRole + " between", value1,
                value2, "stafferRole");

            return this;
        }

        public Criteria andStafferRoleNotBetween(String value1, String value2) {
            addCriterion(IProductTeamDAO.StafferRole + " not between", value1,
                value2, "stafferRole");

            return this;
        }

        public Criteria andStatusIsNull() {
            addCriterion(IProductTeamDAO.Status + " is null");

            return this;
        }

        public Criteria andStatusIsNotNull() {
            addCriterion(IProductTeamDAO.Status + " is not null");

            return this;
        }

        public Criteria andStatusIsNotEmpty() {
            addCriterion(IProductTeamDAO.Status + " is not null AND " +
                IProductTeamDAO.Status + " <> ''");

            return this;
        }

        public Criteria andStatusIsEmpty() {
            addCriterion("(" + IProductTeamDAO.Status + " is null OR " +
                IProductTeamDAO.Status + " = '')");

            return this;
        }

        public Criteria andStatusEqualTo(String value) {
            addCriterion(IProductTeamDAO.Status + " = ", value, "status");

            return this;
        }

        public Criteria andStatusEqualToForeignKey(java.lang.String key) {
            StringBuffer str = new StringBuffer(IProductTeamDAO.Status);
            str.append(" = ").append(key);
            addForeignKeyCriterion(str.toString());

            return this;
        }

        public Criteria andStatusEqualTo(BaseQueryBean subQueryBean,
            IDataAccessInterface<?, ?> dao) {
            addCriterion(IProductTeamDAO.Status + " = ", subQueryBean, dao);

            return this;
        }

        public Criteria andStatusNotEqualTo(String value) {
            addCriterion(IProductTeamDAO.Status + " <>", value, "status");

            return this;
        }

        public Criteria andStatusNotEqualToOrIsNull(String value) {
            addCriterion(IProductTeamDAO.Status + " is null OR " +
                IProductTeamDAO.Status + " <>", value, "status");

            return this;
        }

        public Criteria andStatusNotEqualToForeignKey(java.lang.String key) {
            StringBuffer str = new StringBuffer(IProductTeamDAO.Status);
            str.append(" <> ").append(key);
            addForeignKeyCriterion(str.toString());

            return this;
        }

        public Criteria andStatusNotEqualTo(BaseQueryBean subQueryBean,
            IDataAccessInterface<?, ?> dao) {
            addCriterion(IProductTeamDAO.Status + " <> ", subQueryBean, dao);

            return this;
        }

        public Criteria andStatusGreaterThan(String value) {
            addCriterion(IProductTeamDAO.Status + " >", value, "status");

            return this;
        }

        public Criteria andStatusGreaterThanForeignKey(java.lang.String key) {
            StringBuffer str = new StringBuffer(IProductTeamDAO.Status);
            str.append(" > ").append(key);
            addForeignKeyCriterion(str.toString());

            return this;
        }

        public Criteria andStatusGreaterThan(BaseQueryBean subQueryBean,
            IDataAccessInterface<?, ?> dao) {
            addCriterion(IProductTeamDAO.Status + " > ", subQueryBean, dao);

            return this;
        }

        public Criteria andStatusGreaterThanOrEqualTo(String value) {
            addCriterion(IProductTeamDAO.Status + " >=", value, "status");

            return this;
        }

        public Criteria andStatusGreaterThanOrEqualToForeignKey(
            java.lang.String key) {
            StringBuffer str = new StringBuffer(IProductTeamDAO.Status);
            str.append(" >= ").append(key);
            addForeignKeyCriterion(str.toString());

            return this;
        }

        public Criteria andStatusGreaterThanOrEqualTo(
            BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
            addCriterion(IProductTeamDAO.Status + " >= ", subQueryBean, dao);

            return this;
        }

        public Criteria andStatusLessThan(String value) {
            addCriterion(IProductTeamDAO.Status + " <", value, "status");

            return this;
        }

        public Criteria andStatusLessThanForeignKey(java.lang.String key) {
            StringBuffer str = new StringBuffer(IProductTeamDAO.Status);
            str.append(" < ").append(key);
            addForeignKeyCriterion(str.toString());

            return this;
        }

        public Criteria andStatusLessThan(BaseQueryBean subQueryBean,
            IDataAccessInterface<?, ?> dao) {
            addCriterion(IProductTeamDAO.Status + " < ", subQueryBean, dao);

            return this;
        }

        public Criteria andStatusLessThanOrEqualTo(String value) {
            addCriterion(IProductTeamDAO.Status + " <=", value, "status");

            return this;
        }

        public Criteria andStatusLessThanOrEqualToForeignKey(
            java.lang.String key) {
            StringBuffer str = new StringBuffer(IProductTeamDAO.Status);
            str.append(" <= ").append(key);
            addForeignKeyCriterion(str.toString());

            return this;
        }

        public Criteria andStatusLessThanOrEqualTo(BaseQueryBean subQueryBean,
            IDataAccessInterface<?, ?> dao) {
            addCriterion(IProductTeamDAO.Status + " <= ", subQueryBean, dao);

            return this;
        }

        public Criteria andStatusLike(String value) {
            StringBuffer buffer = new StringBuffer("%");
            buffer.append(value);
            buffer.append("%");
            addCriterion(IProductTeamDAO.Status + " like", buffer.toString(),
                "status");

            return this;
        }

        public Criteria andStatusNotLike(String value) {
            StringBuffer buffer = new StringBuffer("%");
            buffer.append(value);
            buffer.append("%");
            addCriterion(IProductTeamDAO.Status + " not like",
                buffer.toString(), "status");

            return this;
        }

        public Criteria andStatusIn(List<String> values) {
            if (values.size() == 1) {
                return andStatusEqualTo(values.get(0));
            } else {
                addCriterion(IProductTeamDAO.Status + " in", values, "status");

                return this;
            }
        }

        public Criteria andStatusNotIn(List<String> values) {
            if (values.size() == 1) {
                return andStatusNotEqualTo(values.get(0));
            } else {
                addCriterion(IProductTeamDAO.Status + " not in", values,
                    "status");

                return this;
            }
        }

        public Criteria andStatusIn(String[] values) {
            if (values.length == 1) {
                return andStatusEqualTo(values[0]);
            } else {
                addCriterion(IProductTeamDAO.Status + " in",
                    Arrays.asList(values), "status");

                return this;
            }
        }

        public Criteria andStatusNotIn(String[] values) {
            if (values.length == 1) {
                return andStatusNotEqualTo(values[0]);
            } else {
                addCriterion(IProductTeamDAO.Status + " not in",
                    Arrays.asList(values), "status");

                return this;
            }
        }

        public Criteria andStatusIn(BaseQueryBean subQueryBean,
            IDataAccessInterface<?, ?> dao) {
            addCriterion(IProductTeamDAO.Status + " in ", subQueryBean, dao);

            return this;
        }

        public Criteria andStatusNotIn(BaseQueryBean subQueryBean,
            IDataAccessInterface<?, ?> dao) {
            addCriterion(IProductTeamDAO.Status + " not in ", subQueryBean, dao);

            return this;
        }

        public Criteria andStatusBetween(String value1, String value2) {
            addCriterion(IProductTeamDAO.Status + " between", value1, value2,
                "status");

            return this;
        }

        public Criteria andStatusNotBetween(String value1, String value2) {
            addCriterion(IProductTeamDAO.Status + " not between", value1,
                value2, "status");

            return this;
        }

        public Criteria andRemarksIsNull() {
            addCriterion(IProductTeamDAO.Remarks + " is null");

            return this;
        }

        public Criteria andRemarksIsNotNull() {
            addCriterion(IProductTeamDAO.Remarks + " is not null");

            return this;
        }

        public Criteria andRemarksIsNotEmpty() {
            addCriterion(IProductTeamDAO.Remarks + " is not null AND " +
                IProductTeamDAO.Remarks + " <> ''");

            return this;
        }

        public Criteria andRemarksIsEmpty() {
            addCriterion("(" + IProductTeamDAO.Remarks + " is null OR " +
                IProductTeamDAO.Remarks + " = '')");

            return this;
        }

        public Criteria andRemarksEqualTo(String value) {
            addCriterion(IProductTeamDAO.Remarks + " = ", value, "remarks");

            return this;
        }

        public Criteria andRemarksEqualToForeignKey(java.lang.String key) {
            StringBuffer str = new StringBuffer(IProductTeamDAO.Remarks);
            str.append(" = ").append(key);
            addForeignKeyCriterion(str.toString());

            return this;
        }

        public Criteria andRemarksEqualTo(BaseQueryBean subQueryBean,
            IDataAccessInterface<?, ?> dao) {
            addCriterion(IProductTeamDAO.Remarks + " = ", subQueryBean, dao);

            return this;
        }

        public Criteria andRemarksNotEqualTo(String value) {
            addCriterion(IProductTeamDAO.Remarks + " <>", value, "remarks");

            return this;
        }

        public Criteria andRemarksNotEqualToOrIsNull(String value) {
            addCriterion(IProductTeamDAO.Remarks + " is null OR " +
                IProductTeamDAO.Remarks + " <>", value, "remarks");

            return this;
        }

        public Criteria andRemarksNotEqualToForeignKey(java.lang.String key) {
            StringBuffer str = new StringBuffer(IProductTeamDAO.Remarks);
            str.append(" <> ").append(key);
            addForeignKeyCriterion(str.toString());

            return this;
        }

        public Criteria andRemarksNotEqualTo(BaseQueryBean subQueryBean,
            IDataAccessInterface<?, ?> dao) {
            addCriterion(IProductTeamDAO.Remarks + " <> ", subQueryBean, dao);

            return this;
        }

        public Criteria andRemarksGreaterThan(String value) {
            addCriterion(IProductTeamDAO.Remarks + " >", value, "remarks");

            return this;
        }

        public Criteria andRemarksGreaterThanForeignKey(java.lang.String key) {
            StringBuffer str = new StringBuffer(IProductTeamDAO.Remarks);
            str.append(" > ").append(key);
            addForeignKeyCriterion(str.toString());

            return this;
        }

        public Criteria andRemarksGreaterThan(BaseQueryBean subQueryBean,
            IDataAccessInterface<?, ?> dao) {
            addCriterion(IProductTeamDAO.Remarks + " > ", subQueryBean, dao);

            return this;
        }

        public Criteria andRemarksGreaterThanOrEqualTo(String value) {
            addCriterion(IProductTeamDAO.Remarks + " >=", value, "remarks");

            return this;
        }

        public Criteria andRemarksGreaterThanOrEqualToForeignKey(
            java.lang.String key) {
            StringBuffer str = new StringBuffer(IProductTeamDAO.Remarks);
            str.append(" >= ").append(key);
            addForeignKeyCriterion(str.toString());

            return this;
        }

        public Criteria andRemarksGreaterThanOrEqualTo(
            BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
            addCriterion(IProductTeamDAO.Remarks + " >= ", subQueryBean, dao);

            return this;
        }

        public Criteria andRemarksLessThan(String value) {
            addCriterion(IProductTeamDAO.Remarks + " <", value, "remarks");

            return this;
        }

        public Criteria andRemarksLessThanForeignKey(java.lang.String key) {
            StringBuffer str = new StringBuffer(IProductTeamDAO.Remarks);
            str.append(" < ").append(key);
            addForeignKeyCriterion(str.toString());

            return this;
        }

        public Criteria andRemarksLessThan(BaseQueryBean subQueryBean,
            IDataAccessInterface<?, ?> dao) {
            addCriterion(IProductTeamDAO.Remarks + " < ", subQueryBean, dao);

            return this;
        }

        public Criteria andRemarksLessThanOrEqualTo(String value) {
            addCriterion(IProductTeamDAO.Remarks + " <=", value, "remarks");

            return this;
        }

        public Criteria andRemarksLessThanOrEqualToForeignKey(
            java.lang.String key) {
            StringBuffer str = new StringBuffer(IProductTeamDAO.Remarks);
            str.append(" <= ").append(key);
            addForeignKeyCriterion(str.toString());

            return this;
        }

        public Criteria andRemarksLessThanOrEqualTo(
            BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
            addCriterion(IProductTeamDAO.Remarks + " <= ", subQueryBean, dao);

            return this;
        }

        public Criteria andRemarksLike(String value) {
            StringBuffer buffer = new StringBuffer("%");
            buffer.append(value);
            buffer.append("%");
            addCriterion(IProductTeamDAO.Remarks + " like", buffer.toString(),
                "remarks");

            return this;
        }

        public Criteria andRemarksNotLike(String value) {
            StringBuffer buffer = new StringBuffer("%");
            buffer.append(value);
            buffer.append("%");
            addCriterion(IProductTeamDAO.Remarks + " not like",
                buffer.toString(), "remarks");

            return this;
        }

        public Criteria andRemarksIn(List<String> values) {
            if (values.size() == 1) {
                return andRemarksEqualTo(values.get(0));
            } else {
                addCriterion(IProductTeamDAO.Remarks + " in", values, "remarks");

                return this;
            }
        }

        public Criteria andRemarksNotIn(List<String> values) {
            if (values.size() == 1) {
                return andRemarksNotEqualTo(values.get(0));
            } else {
                addCriterion(IProductTeamDAO.Remarks + " not in", values,
                    "remarks");

                return this;
            }
        }

        public Criteria andRemarksIn(String[] values) {
            if (values.length == 1) {
                return andRemarksEqualTo(values[0]);
            } else {
                addCriterion(IProductTeamDAO.Remarks + " in",
                    Arrays.asList(values), "remarks");

                return this;
            }
        }

        public Criteria andRemarksNotIn(String[] values) {
            if (values.length == 1) {
                return andRemarksNotEqualTo(values[0]);
            } else {
                addCriterion(IProductTeamDAO.Remarks + " not in",
                    Arrays.asList(values), "remarks");

                return this;
            }
        }

        public Criteria andRemarksIn(BaseQueryBean subQueryBean,
            IDataAccessInterface<?, ?> dao) {
            addCriterion(IProductTeamDAO.Remarks + " in ", subQueryBean, dao);

            return this;
        }

        public Criteria andRemarksNotIn(BaseQueryBean subQueryBean,
            IDataAccessInterface<?, ?> dao) {
            addCriterion(IProductTeamDAO.Remarks + " not in ", subQueryBean, dao);

            return this;
        }

        public Criteria andRemarksBetween(String value1, String value2) {
            addCriterion(IProductTeamDAO.Remarks + " between", value1, value2,
                "remarks");

            return this;
        }

        public Criteria andRemarksNotBetween(String value1, String value2) {
            addCriterion(IProductTeamDAO.Remarks + " not between", value1,
                value2, "remarks");

            return this;
        }

        public Criteria andStafferNameIsNull() {
            addCriterion(IProductTeamDAO.StafferName + " is null");

            return this;
        }

        public Criteria andStafferNameIsNotNull() {
            addCriterion(IProductTeamDAO.StafferName + " is not null");

            return this;
        }

        public Criteria andStafferNameIsNotEmpty() {
            addCriterion(IProductTeamDAO.StafferName + " is not null AND " +
                IProductTeamDAO.StafferName + " <> ''");

            return this;
        }

        public Criteria andStafferNameIsEmpty() {
            addCriterion("(" + IProductTeamDAO.StafferName + " is null OR " +
                IProductTeamDAO.StafferName + " = '')");

            return this;
        }

        public Criteria andStafferNameEqualTo(String value) {
            addCriterion(IProductTeamDAO.StafferName + " = ", value,
                "stafferName");

            return this;
        }

        public Criteria andStafferNameEqualToForeignKey(java.lang.String key) {
            StringBuffer str = new StringBuffer(IProductTeamDAO.StafferName);
            str.append(" = ").append(key);
            addForeignKeyCriterion(str.toString());

            return this;
        }

        public Criteria andStafferNameEqualTo(BaseQueryBean subQueryBean,
            IDataAccessInterface<?, ?> dao) {
            addCriterion(IProductTeamDAO.StafferName + " = ", subQueryBean, dao);

            return this;
        }

        public Criteria andStafferNameNotEqualTo(String value) {
            addCriterion(IProductTeamDAO.StafferName + " <>", value,
                "stafferName");

            return this;
        }

        public Criteria andStafferNameNotEqualToOrIsNull(String value) {
            addCriterion(IProductTeamDAO.StafferName + " is null OR " +
                IProductTeamDAO.StafferName + " <>", value, "stafferName");

            return this;
        }

        public Criteria andStafferNameNotEqualToForeignKey(java.lang.String key) {
            StringBuffer str = new StringBuffer(IProductTeamDAO.StafferName);
            str.append(" <> ").append(key);
            addForeignKeyCriterion(str.toString());

            return this;
        }

        public Criteria andStafferNameNotEqualTo(BaseQueryBean subQueryBean,
            IDataAccessInterface<?, ?> dao) {
            addCriterion(IProductTeamDAO.StafferName + " <> ", subQueryBean, dao);

            return this;
        }

        public Criteria andStafferNameGreaterThan(String value) {
            addCriterion(IProductTeamDAO.StafferName + " >", value,
                "stafferName");

            return this;
        }

        public Criteria andStafferNameGreaterThanForeignKey(
            java.lang.String key) {
            StringBuffer str = new StringBuffer(IProductTeamDAO.StafferName);
            str.append(" > ").append(key);
            addForeignKeyCriterion(str.toString());

            return this;
        }

        public Criteria andStafferNameGreaterThan(BaseQueryBean subQueryBean,
            IDataAccessInterface<?, ?> dao) {
            addCriterion(IProductTeamDAO.StafferName + " > ", subQueryBean, dao);

            return this;
        }

        public Criteria andStafferNameGreaterThanOrEqualTo(String value) {
            addCriterion(IProductTeamDAO.StafferName + " >=", value,
                "stafferName");

            return this;
        }

        public Criteria andStafferNameGreaterThanOrEqualToForeignKey(
            java.lang.String key) {
            StringBuffer str = new StringBuffer(IProductTeamDAO.StafferName);
            str.append(" >= ").append(key);
            addForeignKeyCriterion(str.toString());

            return this;
        }

        public Criteria andStafferNameGreaterThanOrEqualTo(
            BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
            addCriterion(IProductTeamDAO.StafferName + " >= ", subQueryBean, dao);

            return this;
        }

        public Criteria andStafferNameLessThan(String value) {
            addCriterion(IProductTeamDAO.StafferName + " <", value,
                "stafferName");

            return this;
        }

        public Criteria andStafferNameLessThanForeignKey(java.lang.String key) {
            StringBuffer str = new StringBuffer(IProductTeamDAO.StafferName);
            str.append(" < ").append(key);
            addForeignKeyCriterion(str.toString());

            return this;
        }

        public Criteria andStafferNameLessThan(BaseQueryBean subQueryBean,
            IDataAccessInterface<?, ?> dao) {
            addCriterion(IProductTeamDAO.StafferName + " < ", subQueryBean, dao);

            return this;
        }

        public Criteria andStafferNameLessThanOrEqualTo(String value) {
            addCriterion(IProductTeamDAO.StafferName + " <=", value,
                "stafferName");

            return this;
        }

        public Criteria andStafferNameLessThanOrEqualToForeignKey(
            java.lang.String key) {
            StringBuffer str = new StringBuffer(IProductTeamDAO.StafferName);
            str.append(" <= ").append(key);
            addForeignKeyCriterion(str.toString());

            return this;
        }

        public Criteria andStafferNameLessThanOrEqualTo(
            BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
            addCriterion(IProductTeamDAO.StafferName + " <= ", subQueryBean, dao);

            return this;
        }

        public Criteria andStafferNameLike(String value) {
            StringBuffer buffer = new StringBuffer("%");
            buffer.append(value);
            buffer.append("%");
            addCriterion(IProductTeamDAO.StafferName + " like",
                buffer.toString(), "stafferName");

            return this;
        }

        public Criteria andStafferNameNotLike(String value) {
            StringBuffer buffer = new StringBuffer("%");
            buffer.append(value);
            buffer.append("%");
            addCriterion(IProductTeamDAO.StafferName + " not like",
                buffer.toString(), "stafferName");

            return this;
        }

        public Criteria andStafferNameIn(List<String> values) {
            if (values.size() == 1) {
                return andStafferNameEqualTo(values.get(0));
            } else {
                addCriterion(IProductTeamDAO.StafferName + " in", values,
                    "stafferName");

                return this;
            }
        }

        public Criteria andStafferNameNotIn(List<String> values) {
            if (values.size() == 1) {
                return andStafferNameNotEqualTo(values.get(0));
            } else {
                addCriterion(IProductTeamDAO.StafferName + " not in", values,
                    "stafferName");

                return this;
            }
        }

        public Criteria andStafferNameIn(String[] values) {
            if (values.length == 1) {
                return andStafferNameEqualTo(values[0]);
            } else {
                addCriterion(IProductTeamDAO.StafferName + " in",
                    Arrays.asList(values), "stafferName");

                return this;
            }
        }

        public Criteria andStafferNameNotIn(String[] values) {
            if (values.length == 1) {
                return andStafferNameNotEqualTo(values[0]);
            } else {
                addCriterion(IProductTeamDAO.StafferName + " not in",
                    Arrays.asList(values), "stafferName");

                return this;
            }
        }

        public Criteria andStafferNameIn(BaseQueryBean subQueryBean,
            IDataAccessInterface<?, ?> dao) {
            addCriterion(IProductTeamDAO.StafferName + " in ", subQueryBean, dao);

            return this;
        }

        public Criteria andStafferNameNotIn(BaseQueryBean subQueryBean,
            IDataAccessInterface<?, ?> dao) {
            addCriterion(IProductTeamDAO.StafferName + " not in ",
                subQueryBean, dao);

            return this;
        }

        public Criteria andStafferNameBetween(String value1, String value2) {
            addCriterion(IProductTeamDAO.StafferName + " between", value1,
                value2, "stafferName");

            return this;
        }

        public Criteria andStafferNameNotBetween(String value1, String value2) {
            addCriterion(IProductTeamDAO.StafferName + " not between", value1,
                value2, "stafferName");

            return this;
        }

        public Criteria andStafferPhotoIsNull() {
            addCriterion(IProductTeamDAO.StafferPhoto + " is null");

            return this;
        }

        public Criteria andStafferPhotoIsNotNull() {
            addCriterion(IProductTeamDAO.StafferPhoto + " is not null");

            return this;
        }

        public Criteria andStafferPhotoIsNotEmpty() {
            addCriterion(IProductTeamDAO.StafferPhoto + " is not null AND " +
                IProductTeamDAO.StafferPhoto + " <> ''");

            return this;
        }

        public Criteria andStafferPhotoIsEmpty() {
            addCriterion("(" + IProductTeamDAO.StafferPhoto + " is null OR " +
                IProductTeamDAO.StafferPhoto + " = '')");

            return this;
        }

        public Criteria andStafferPhotoEqualTo(String value) {
            addCriterion(IProductTeamDAO.StafferPhoto + " = ", value,
                "stafferPhoto");

            return this;
        }

        public Criteria andStafferPhotoEqualToForeignKey(java.lang.String key) {
            StringBuffer str = new StringBuffer(IProductTeamDAO.StafferPhoto);
            str.append(" = ").append(key);
            addForeignKeyCriterion(str.toString());

            return this;
        }

        public Criteria andStafferPhotoEqualTo(BaseQueryBean subQueryBean,
            IDataAccessInterface<?, ?> dao) {
            addCriterion(IProductTeamDAO.StafferPhoto + " = ", subQueryBean, dao);

            return this;
        }

        public Criteria andStafferPhotoNotEqualTo(String value) {
            addCriterion(IProductTeamDAO.StafferPhoto + " <>", value,
                "stafferPhoto");

            return this;
        }

        public Criteria andStafferPhotoNotEqualToOrIsNull(String value) {
            addCriterion(IProductTeamDAO.StafferPhoto + " is null OR " +
                IProductTeamDAO.StafferPhoto + " <>", value, "stafferPhoto");

            return this;
        }

        public Criteria andStafferPhotoNotEqualToForeignKey(
            java.lang.String key) {
            StringBuffer str = new StringBuffer(IProductTeamDAO.StafferPhoto);
            str.append(" <> ").append(key);
            addForeignKeyCriterion(str.toString());

            return this;
        }

        public Criteria andStafferPhotoNotEqualTo(BaseQueryBean subQueryBean,
            IDataAccessInterface<?, ?> dao) {
            addCriterion(IProductTeamDAO.StafferPhoto + " <> ", subQueryBean,
                dao);

            return this;
        }

        public Criteria andStafferPhotoGreaterThan(String value) {
            addCriterion(IProductTeamDAO.StafferPhoto + " >", value,
                "stafferPhoto");

            return this;
        }

        public Criteria andStafferPhotoGreaterThanForeignKey(
            java.lang.String key) {
            StringBuffer str = new StringBuffer(IProductTeamDAO.StafferPhoto);
            str.append(" > ").append(key);
            addForeignKeyCriterion(str.toString());

            return this;
        }

        public Criteria andStafferPhotoGreaterThan(BaseQueryBean subQueryBean,
            IDataAccessInterface<?, ?> dao) {
            addCriterion(IProductTeamDAO.StafferPhoto + " > ", subQueryBean, dao);

            return this;
        }

        public Criteria andStafferPhotoGreaterThanOrEqualTo(String value) {
            addCriterion(IProductTeamDAO.StafferPhoto + " >=", value,
                "stafferPhoto");

            return this;
        }

        public Criteria andStafferPhotoGreaterThanOrEqualToForeignKey(
            java.lang.String key) {
            StringBuffer str = new StringBuffer(IProductTeamDAO.StafferPhoto);
            str.append(" >= ").append(key);
            addForeignKeyCriterion(str.toString());

            return this;
        }

        public Criteria andStafferPhotoGreaterThanOrEqualTo(
            BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
            addCriterion(IProductTeamDAO.StafferPhoto + " >= ", subQueryBean,
                dao);

            return this;
        }

        public Criteria andStafferPhotoLessThan(String value) {
            addCriterion(IProductTeamDAO.StafferPhoto + " <", value,
                "stafferPhoto");

            return this;
        }

        public Criteria andStafferPhotoLessThanForeignKey(java.lang.String key) {
            StringBuffer str = new StringBuffer(IProductTeamDAO.StafferPhoto);
            str.append(" < ").append(key);
            addForeignKeyCriterion(str.toString());

            return this;
        }

        public Criteria andStafferPhotoLessThan(BaseQueryBean subQueryBean,
            IDataAccessInterface<?, ?> dao) {
            addCriterion(IProductTeamDAO.StafferPhoto + " < ", subQueryBean, dao);

            return this;
        }

        public Criteria andStafferPhotoLessThanOrEqualTo(String value) {
            addCriterion(IProductTeamDAO.StafferPhoto + " <=", value,
                "stafferPhoto");

            return this;
        }

        public Criteria andStafferPhotoLessThanOrEqualToForeignKey(
            java.lang.String key) {
            StringBuffer str = new StringBuffer(IProductTeamDAO.StafferPhoto);
            str.append(" <= ").append(key);
            addForeignKeyCriterion(str.toString());

            return this;
        }

        public Criteria andStafferPhotoLessThanOrEqualTo(
            BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
            addCriterion(IProductTeamDAO.StafferPhoto + " <= ", subQueryBean,
                dao);

            return this;
        }

        public Criteria andStafferPhotoLike(String value) {
            StringBuffer buffer = new StringBuffer("%");
            buffer.append(value);
            buffer.append("%");
            addCriterion(IProductTeamDAO.StafferPhoto + " like",
                buffer.toString(), "stafferPhoto");

            return this;
        }

        public Criteria andStafferPhotoNotLike(String value) {
            StringBuffer buffer = new StringBuffer("%");
            buffer.append(value);
            buffer.append("%");
            addCriterion(IProductTeamDAO.StafferPhoto + " not like",
                buffer.toString(), "stafferPhoto");

            return this;
        }

        public Criteria andStafferPhotoIn(List<String> values) {
            if (values.size() == 1) {
                return andStafferPhotoEqualTo(values.get(0));
            } else {
                addCriterion(IProductTeamDAO.StafferPhoto + " in", values,
                    "stafferPhoto");

                return this;
            }
        }

        public Criteria andStafferPhotoNotIn(List<String> values) {
            if (values.size() == 1) {
                return andStafferPhotoNotEqualTo(values.get(0));
            } else {
                addCriterion(IProductTeamDAO.StafferPhoto + " not in", values,
                    "stafferPhoto");

                return this;
            }
        }

        public Criteria andStafferPhotoIn(String[] values) {
            if (values.length == 1) {
                return andStafferPhotoEqualTo(values[0]);
            } else {
                addCriterion(IProductTeamDAO.StafferPhoto + " in",
                    Arrays.asList(values), "stafferPhoto");

                return this;
            }
        }

        public Criteria andStafferPhotoNotIn(String[] values) {
            if (values.length == 1) {
                return andStafferPhotoNotEqualTo(values[0]);
            } else {
                addCriterion(IProductTeamDAO.StafferPhoto + " not in",
                    Arrays.asList(values), "stafferPhoto");

                return this;
            }
        }

        public Criteria andStafferPhotoIn(BaseQueryBean subQueryBean,
            IDataAccessInterface<?, ?> dao) {
            addCriterion(IProductTeamDAO.StafferPhoto + " in ", subQueryBean,
                dao);

            return this;
        }

        public Criteria andStafferPhotoNotIn(BaseQueryBean subQueryBean,
            IDataAccessInterface<?, ?> dao) {
            addCriterion(IProductTeamDAO.StafferPhoto + " not in ",
                subQueryBean, dao);

            return this;
        }

        public Criteria andStafferPhotoBetween(String value1, String value2) {
            addCriterion(IProductTeamDAO.StafferPhoto + " between", value1,
                value2, "stafferPhoto");

            return this;
        }

        public Criteria andStafferPhotoNotBetween(String value1, String value2) {
            addCriterion(IProductTeamDAO.StafferPhoto + " not between", value1,
                value2, "stafferPhoto");

            return this;
        }

        public Criteria andProductNameIsNull() {
            addCriterion(IProductTeamDAO.ProductName + " is null");

            return this;
        }

        public Criteria andProductNameIsNotNull() {
            addCriterion(IProductTeamDAO.ProductName + " is not null");

            return this;
        }

        public Criteria andProductNameIsNotEmpty() {
            addCriterion(IProductTeamDAO.ProductName + " is not null AND " +
                IProductTeamDAO.ProductName + " <> ''");

            return this;
        }

        public Criteria andProductNameIsEmpty() {
            addCriterion("(" + IProductTeamDAO.ProductName + " is null OR " +
                IProductTeamDAO.ProductName + " = '')");

            return this;
        }

        public Criteria andProductNameEqualTo(String value) {
            addCriterion(IProductTeamDAO.ProductName + " = ", value,
                "productName");

            return this;
        }

        public Criteria andProductNameEqualToForeignKey(java.lang.String key) {
            StringBuffer str = new StringBuffer(IProductTeamDAO.ProductName);
            str.append(" = ").append(key);
            addForeignKeyCriterion(str.toString());

            return this;
        }

        public Criteria andProductNameEqualTo(BaseQueryBean subQueryBean,
            IDataAccessInterface<?, ?> dao) {
            addCriterion(IProductTeamDAO.ProductName + " = ", subQueryBean, dao);

            return this;
        }

        public Criteria andProductNameNotEqualTo(String value) {
            addCriterion(IProductTeamDAO.ProductName + " <>", value,
                "productName");

            return this;
        }

        public Criteria andProductNameNotEqualToOrIsNull(String value) {
            addCriterion(IProductTeamDAO.ProductName + " is null OR " +
                IProductTeamDAO.ProductName + " <>", value, "productName");

            return this;
        }

        public Criteria andProductNameNotEqualToForeignKey(java.lang.String key) {
            StringBuffer str = new StringBuffer(IProductTeamDAO.ProductName);
            str.append(" <> ").append(key);
            addForeignKeyCriterion(str.toString());

            return this;
        }

        public Criteria andProductNameNotEqualTo(BaseQueryBean subQueryBean,
            IDataAccessInterface<?, ?> dao) {
            addCriterion(IProductTeamDAO.ProductName + " <> ", subQueryBean, dao);

            return this;
        }

        public Criteria andProductNameGreaterThan(String value) {
            addCriterion(IProductTeamDAO.ProductName + " >", value,
                "productName");

            return this;
        }

        public Criteria andProductNameGreaterThanForeignKey(
            java.lang.String key) {
            StringBuffer str = new StringBuffer(IProductTeamDAO.ProductName);
            str.append(" > ").append(key);
            addForeignKeyCriterion(str.toString());

            return this;
        }

        public Criteria andProductNameGreaterThan(BaseQueryBean subQueryBean,
            IDataAccessInterface<?, ?> dao) {
            addCriterion(IProductTeamDAO.ProductName + " > ", subQueryBean, dao);

            return this;
        }

        public Criteria andProductNameGreaterThanOrEqualTo(String value) {
            addCriterion(IProductTeamDAO.ProductName + " >=", value,
                "productName");

            return this;
        }

        public Criteria andProductNameGreaterThanOrEqualToForeignKey(
            java.lang.String key) {
            StringBuffer str = new StringBuffer(IProductTeamDAO.ProductName);
            str.append(" >= ").append(key);
            addForeignKeyCriterion(str.toString());

            return this;
        }

        public Criteria andProductNameGreaterThanOrEqualTo(
            BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
            addCriterion(IProductTeamDAO.ProductName + " >= ", subQueryBean, dao);

            return this;
        }

        public Criteria andProductNameLessThan(String value) {
            addCriterion(IProductTeamDAO.ProductName + " <", value,
                "productName");

            return this;
        }

        public Criteria andProductNameLessThanForeignKey(java.lang.String key) {
            StringBuffer str = new StringBuffer(IProductTeamDAO.ProductName);
            str.append(" < ").append(key);
            addForeignKeyCriterion(str.toString());

            return this;
        }

        public Criteria andProductNameLessThan(BaseQueryBean subQueryBean,
            IDataAccessInterface<?, ?> dao) {
            addCriterion(IProductTeamDAO.ProductName + " < ", subQueryBean, dao);

            return this;
        }

        public Criteria andProductNameLessThanOrEqualTo(String value) {
            addCriterion(IProductTeamDAO.ProductName + " <=", value,
                "productName");

            return this;
        }

        public Criteria andProductNameLessThanOrEqualToForeignKey(
            java.lang.String key) {
            StringBuffer str = new StringBuffer(IProductTeamDAO.ProductName);
            str.append(" <= ").append(key);
            addForeignKeyCriterion(str.toString());

            return this;
        }

        public Criteria andProductNameLessThanOrEqualTo(
            BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
            addCriterion(IProductTeamDAO.ProductName + " <= ", subQueryBean, dao);

            return this;
        }

        public Criteria andProductNameLike(String value) {
            StringBuffer buffer = new StringBuffer("%");
            buffer.append(value);
            buffer.append("%");
            addCriterion(IProductTeamDAO.ProductName + " like",
                buffer.toString(), "productName");

            return this;
        }

        public Criteria andProductNameNotLike(String value) {
            StringBuffer buffer = new StringBuffer("%");
            buffer.append(value);
            buffer.append("%");
            addCriterion(IProductTeamDAO.ProductName + " not like",
                buffer.toString(), "productName");

            return this;
        }

        public Criteria andProductNameIn(List<String> values) {
            if (values.size() == 1) {
                return andProductNameEqualTo(values.get(0));
            } else {
                addCriterion(IProductTeamDAO.ProductName + " in", values,
                    "productName");

                return this;
            }
        }

        public Criteria andProductNameNotIn(List<String> values) {
            if (values.size() == 1) {
                return andProductNameNotEqualTo(values.get(0));
            } else {
                addCriterion(IProductTeamDAO.ProductName + " not in", values,
                    "productName");

                return this;
            }
        }

        public Criteria andProductNameIn(String[] values) {
            if (values.length == 1) {
                return andProductNameEqualTo(values[0]);
            } else {
                addCriterion(IProductTeamDAO.ProductName + " in",
                    Arrays.asList(values), "productName");

                return this;
            }
        }

        public Criteria andProductNameNotIn(String[] values) {
            if (values.length == 1) {
                return andProductNameNotEqualTo(values[0]);
            } else {
                addCriterion(IProductTeamDAO.ProductName + " not in",
                    Arrays.asList(values), "productName");

                return this;
            }
        }

        public Criteria andProductNameIn(BaseQueryBean subQueryBean,
            IDataAccessInterface<?, ?> dao) {
            addCriterion(IProductTeamDAO.ProductName + " in ", subQueryBean, dao);

            return this;
        }

        public Criteria andProductNameNotIn(BaseQueryBean subQueryBean,
            IDataAccessInterface<?, ?> dao) {
            addCriterion(IProductTeamDAO.ProductName + " not in ",
                subQueryBean, dao);

            return this;
        }

        public Criteria andProductNameBetween(String value1, String value2) {
            addCriterion(IProductTeamDAO.ProductName + " between", value1,
                value2, "productName");

            return this;
        }

        public Criteria andProductNameNotBetween(String value1, String value2) {
            addCriterion(IProductTeamDAO.ProductName + " not between", value1,
                value2, "productName");

            return this;
        }
    }
}
